package util

const (
	// DevMode 开发模式
	DevMode = "dev"
	// ProdMode 生产模式
	ProdMode = "prod"
	// SessionUserIDKey 定义session的用户ID键
	SessionUserIDKey = "user_id"
	// SessionUserTypeKey 定义session的用户类型键
	SessionUserTypeKey = "user_type"
	// SessionEnterpriseIDKey 定义session的企业ID键
	SessionEnterpriseIDKey = "enterprise_id"
	// TokenKey 令牌键
	TokenKey = "X-JGT-TOKEN"
)

type (
	userIDKey       struct{}
	userTypeKey     struct{}
	traceIDKey      struct{}
	urlMemoKey      struct{}
	appParameterKey struct{}
)

// GetUserIDKey 获取用户ID的键
func GetUserIDKey() interface{} {
	return userIDKey{}
}

// GetUserTypeKey 获取用户类型的键
func GetUserTypeKey() interface{} {
	return userTypeKey{}
}

// GetTraceIDKey 获取跟踪ID
func GetTraceIDKey() interface{} {
	return traceIDKey{}
}

// GetURLMemoKey 获取请求路由备注
func GetURLMemoKey() interface{} {
	return urlMemoKey{}
}

// GetAPPParameterKey 获取APP参数
func GetAPPParameterKey() interface{} {
	return appParameterKey{}
}
